﻿using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace JNPF.Basics.Models
{
    /// <summary>
    /// 流程任务
    /// 版 本：V3.0.0
    /// 版 权：引迈信息技术有限公司（https://www.jnpfsoft.com）
    /// 作 者：JNPF开发平台组
    /// 日 期：2018-06-08 
    /// </summary>
    [Table("FLOW_TASK")]
    public class FlowTaskEntity
    {
        /// <summary>
        /// 自然主键
        /// </summary>
        [Key]
        [Column("F_ID")]
        public string Id { get; set; }
        /// <summary>
        /// 实例进程
        /// </summary>
        [Column("F_PROCESSID")]
        public string ProcessId { get; set; }
        /// <summary>
        /// 任务编码
        /// </summary>
        [Column("F_ENCODE")]
        public string EnCode { get; set; }
        /// <summary>
        /// 任务标题
        /// </summary>
        [Column("F_FULLNAME")]
        public string FullName { get; set; }
        /// <summary>
        /// 紧急程度
        /// </summary>
        [Column("F_FLOWURGENT")]
        public int? FlowUrgent { get; set; }
        /// <summary>
        /// 流程主键
        /// </summary>
        [Column("F_FLOWID")]
        public string FlowId { get; set; }
        /// <summary>
        /// 流程编码
        /// </summary>
        [Column("F_FLOWCODE")]
        public string FlowCode { get; set; }
        /// <summary>
        /// 流程名称
        /// </summary>
        [Column("F_FLOWNAME")]
        public string FlowName { get; set; }
        /// <summary>
        /// 流程类型
        /// </summary>
        [Column("F_FLOWTYPE")]
        public int? FlowType { get; set; }
        /// <summary>
        /// 流程分类
        /// </summary>
        [Column("F_FLOWCATEGORY")]
        public string FlowCategory { get; set; }
        /// <summary>
        /// 流程表单
        /// </summary>
        [Column("F_FLOWFORM")]
        public string FlowForm { get; set; }
        /// <summary>
        /// 表单内容
        /// </summary>
        [Column("F_FLOWFORMCONTENTJSON")]
        public string FlowFormContentJson { get; set; }
        /// <summary>
        /// 流程模板
        /// </summary>
        [Column("F_FLOWTEMPLATEJSON")]
        public string FlowTemplateJson { get; set; }
        /// <summary>
        /// 流程版本
        /// </summary>
        [Column("F_FLOWVERSION")]
        public string FlowVersion { get; set; }
        /// <summary>
        /// 开始时间
        /// </summary>
        [Column("F_STARTTIME")]
        public DateTime? StartTime { get; set; }
        /// <summary>
        /// 结束时间
        /// </summary>
        [Column("F_ENDTIME")]
        public DateTime? EndTime { get; set; }
        /// <summary>
        /// 当前步骤
        /// </summary>
        [Column("F_THISSTEP")]
        public string ThisStep { get; set; }
        /// <summary>
        /// 当前步骤Id
        /// </summary>
        [Column("F_THISSTEPID")]
        public string ThisStepId { get; set; }
        /// <summary>
        /// 重要等级
        /// </summary>
        [Column("F_GRADE")]
        public string Grade { get; set; }
        /// <summary>
        /// 任务状态：【0-草稿、1-处理、2-通过、3-驳回、4-撤销、5-终止】
        /// </summary>
        [Column("F_STATUS")]
        public int? Status { get; set; }
        /// <summary>
        /// 完成情况
        /// </summary>
        [Column("F_COMPLETION")]
        public int? Completion { get; set; }
        /// <summary>
        /// 描述
        /// </summary>
        [Column("F_DESCRIPTION")]
        public string Description { get; set; }
        /// <summary>
        /// 排序码
        /// </summary>
        [Column("F_SORTCODE")]
        public long? SortCode { get; set; }
        /// <summary>
        /// 有效标志
        /// </summary>
        [Column("F_ENABLEDMARK")]
        public int? EnabledMark { get; set; }
        /// <summary>
        /// 创建时间
        /// </summary>
        [Column("F_CREATORTIME")]
        public DateTime? CreatorTime { get; set; }
        /// <summary>
        /// 创建用户
        /// </summary>
        [Column("F_CREATORUSERID")]
        public string CreatorUserId { get; set; }
        /// <summary>
        /// 修改时间
        /// </summary>
        [Column("F_LASTMODIFYTIME")]
        public DateTime? LastModifyTime { get; set; }
        /// <summary>
        /// 修改用户
        /// </summary>
        [Column("F_LASTMODIFYUSERID")]
        public string LastModifyUserId { get; set; }
        /// <summary>
        /// 删除标志
        /// </summary>
        [Column("F_DELETEMARK")]
        public int? DeleteMark { get; set; }
        /// <summary>
        /// 删除时间
        /// </summary>
        [Column("F_DELETETIME")]
        public DateTime? DeleteTime { get; set; }
        /// <summary>
        /// 删除用户
        /// </summary>
        [Column("F_DELETEUSERID")]
        public string DeleteUserId { get; set; }
    }
}